home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 2.iso / BARNET / UTILITIES / MPACK152 / ReadMe152
Text File  |  1996-10-17  |  16KB  |  387 lines

  1. mpack/munpack 1.5.2 public beta (beta 4)
  2.  
  3. This is a public beta release.  It would be a full release except that I've
  4. recently been sent the development sources for the next cross-platform
  5. version.  So I've tidied up the loose ends in this version and released it
  6. "unofficially".  Please reports any bugs/comments, as othwerwise they are
  7. likely to be present in the next official release.
  8.  
  9. The current Wimp interface to !Mpack is very crude.  The development sources
  10. have a new, more flexible library for creating MIME messages, so (provided
  11. I have time) !Mpack's GUI should be greatly improved.
  12.  
  13. If you prefer to use command line tools, you'll find the executables mpack
  14. and munpack inside !Mpack and !Munpack respectively.  These work pretty
  15. much as they used to -- I've added a "-w" switch to each which if specified
  16. starts up the wimp frontend.
  17.  
  18. Changes since 1.5.2 beta 3:
  19.  
  20. * !Munpack and !Mpack now respond to Message_DataSave so files dragged from
  21.   other apps get processed (rather than ignored).
  22.  
  23. Changes since 1.5.2 beta 2:
  24.  
  25. * Added dialog box to !Munpack to allow options to be changed during run, and
  26.   also menu options to load/save choices.
  27.  
  28. * Added code to create unpack directory if it doesn't exist (one level only
  29.   at present).
  30.  
  31. * Added wimp interface to mpack.  Currently it's lacking in many ways --
  32.   output filename is fixed, message subject is fixed, etc.
  33.  
  34. * Mpack now uses RISC OS filetype in helping choose a MIME "Content-Type:".
  35.  
  36. * Code to create store directory for multiparts now chooses DOSFS-friendly
  37.   names.
  38.  
  39. * "^" is more carefully checked for in output filenames.  Before it couldn't
  40.   be sneaked in to produce output in a higher level directory, but in some
  41.   circumstances it could get into leafnames producing illegal filenames.
  42.  
  43. * File-suffix counter is now reset after each file (change copied back from
  44.   development sources for next cross-platform release).
  45.  
  46. * Warning box given if application with !Boot is unpacked.
  47.  
  48. Changes since 1.5.2 beta 1:
  49.  
  50. * Fixed munpack bug: unpacking a !Marcel directory structure, then a normal
  51.   attachment gave error due to internal state not being reset.
  52.  
  53. * Tidied up error reporting.
  54.  
  55. Changes since 1.5:
  56.  
  57. * Wimp front-end to munpack.  Quick help:  drag message to icon to decode,
  58.   click SELECT on icon to view munpack scrap directory.  !Munpack.munpack
  59.   can still be used in command line mode if you want.
  60.  
  61. * Rewritten to not use UnixLib, which means the executables are noticeably 
  62.   smaller and probably a bit faster.
  63.  
  64. * Fixed a number of filename handling bugs (e.g. FOO.GIF would only unpack
  65.   as file GIF in directory FOO before).  Should truncate names if necessary,
  66.   but shouldn't if the filing system supports long names (or if LongFiles
  67.   or similar is running).
  68.  
  69. * Added auto-filetyping by extension and/or content-type.
  70.  
  71. Bug reports and other comments are greatly appreciated.
  72.  
  73. Olly
  74.  
  75. P.S. Here's the readme from 1.5 which is still mostly correct:
  76. ===========================================================================
  77.  
  78.                  mpack/munpack version 1.5 for archimedes
  79.  
  80. Mpack and munpack are utilities for encoding and decoding
  81. (respectively) binary files in MIME (Multipurpose Internet Mail
  82. Extensions) format mail messages.  For compatibility with older forms
  83. of transferring binary files, the munpack program can also decode
  84. messages in split-uuencoded format.  The Macintosh version can also
  85. decode messages in split-BinHex format.
  86.  
  87. The Archimedes port interworks with Marcel (ANT's RISC OS MIME-compliant
  88. MUA) to preserve filetypes, timestamps and access permissions.  munpack
  89. should correctly unpack any Marcel message.  At present, mpack doesn't
  90. include the filetype, etc. information.  This may be implemented in a
  91. future release.
  92.  
  93. Versions are included for unix, pc, os2, mac, amiga and archimedes
  94. systems.  The canonical FTP site for this software is
  95. ftp.andrew.cmu.edu:pub/mpack/
  96.  
  97. This MIME implementation is intended to be as simple and portable as
  98. possible.  For a slightly more sophisticated MIME implementation, see
  99. the program MetaMail, available via anonymous FTP to
  100. thumper.bellcore.com, in directory pub/nsb
  101.  
  102.  
  103. Decoding MIME messages:
  104.  
  105. To decode a MIME message, first save it to a text file.  If possible,
  106. save it with all headers included.  Munpack can decode some MIME files
  107. when the headers are missing or incomplete, other files it cannot
  108. decode without having the information in the headers.  In general,
  109. messages which have a statement at the beginning that they are in MIME
  110. format can be decoded without the headers.  Messages which have been
  111. split into multiple parts generally require all headers in order to be
  112. reassembled and decoded.
  113.  
  114. Some LAN-based mail systems and some mail providers (including America
  115. Online, as of the writing of this document) place the mail headers at
  116. the bottom of the message, instead of at the top of the message.  If
  117. you are having problems decoding a MIME message on such a system, you
  118. need to convert the mail back into the standard format by removing the
  119. system's nonstandard headers and moving the standard Internet headers
  120. to the top of the message (separated from the message body with a
  121. blank line).
  122.  
  123. There must be exactly one message per file.  Munpack cannot deal with
  124. multiple messages in a single file, to decode things correctly it must
  125. know when one message ends and the next one begins.
  126.  
  127. To decode a message, run the command:
  128.  
  129.     munpack file
  130.  
  131. where "file" is the name of the file containing the message.  More than
  132. one filename may be specified, munpack will try to decode the message in
  133. each file.  For more information on ways to run munpack, see the section
  134. "Using munpack" below.
  135.  
  136.  
  137. Reporting bugs:
  138.  
  139. Bugs and comments should be reported to mpack-bugs@andrew.cmu.edu.
  140. When reporting bugs or other problems, please include the following
  141. information:
  142.  
  143.   * The version number of Mpack
  144.   * The platform (Unix, PC, OS/2, Mac, Amiga, Archimedes)
  145.   * The EXACT output of any unsuccessful attempts.
  146.   * If having a problem decoding, the first couple of lines
  147.     of the input file.
  148.  
  149.  
  150. Compilation:
  151.  
  152. The RISC OS sources have been compiled with Acorn C version 4.0 and
  153. UnixLib 3.6e (ftp-able from micros.hensa.ac.uk).
  154.  
  155. Using mpack:
  156.  
  157. Mpack is used to encode a file into one or more MIME format messages.
  158. The program is invoked with:
  159.  
  160.     mpack [options] -o outputfile file
  161.  
  162. Where "[options]" is one or more optional switches described below.
  163. "-o outputfile" is also described below. "file" is the name of the
  164. file to encode.
  165. The possible options are:
  166.  
  167.      -s subject
  168.           Set the Subject header field to Subject.   By default,
  169.           mpack will prompt for the contents of the subject
  170.           header.
  171.  
  172.      -d descriptionfile
  173.           Include the contents of the file descriptionfile in an
  174.           introductory section at the beginning of the first
  175.           generated message.
  176.  
  177.      -m maxsize
  178.           Split the message (if necessary) into partial messages,
  179.           each not exceeding maxsize characters.  The default
  180.           limit is the value of the SPLITSIZE environment 
  181.       variable, or no limit if the environment variable
  182.           does not exist.  Specifying a maxsize of 0 means there
  183.           is no limit to the size of the generated message.
  184.  
  185.      -c content-type
  186.           Label the included file as being of MIME type
  187.           content-type, which must be a subtype of application,
  188.           audio, image, or video.  If this switch is not given,
  189.           mpack examines the file to determine its type.
  190.  
  191.      -o outputfile
  192.           Write the generated message to the file outputfile.  If
  193.           the message has to be split, the partial messages will
  194.           instead be written to the files outputfile/01,
  195.           outputfile/02, etc.
  196.  
  197. The environment variables which control mpack's behavior are:
  198.  
  199.      SPLITSIZE
  200.           Default value of the -m switch.  Default "0".
  201.  
  202.      HOSTNAME
  203.           Fully qualified domain name to use in generated message-ids.
  204.       Default "random-arc".
  205.  
  206.  
  207. Using munpack:
  208.  
  209. Munpack is used to decode one or more messages in MIME or
  210. split-uuencoded format and extract the embedded files.  The program is
  211. invoked with:
  212.  
  213.     munpack [options] filename...
  214.  
  215. which reads the messages in the files "filename...".  Wildcards are
  216. accepted.  Munpack may also be invoked with just:
  217.  
  218.     munpack [options]
  219.  
  220. which reads a message from the standard input.
  221.  
  222. If the message suggests a file name to use for the imbedded part, that
  223. name is cleaned of potential problem characters and used for the
  224. output file.  If the suggested filename includes subdirectories, they
  225. will be created as necessary.  If the message does not suggest a file
  226. name, the names "part1", "part2", etc are used in sequence.
  227.  
  228. If the imbedded part was preceded with textual information, that
  229. information is also written to a file. The file is named the same as
  230. the imbedded part, with any filename extension replaced with
  231. "/dsc"
  232.  
  233. The possible options are:
  234.  
  235.      -f
  236.           Forces the overwriting of existing files.  If a message
  237.           suggests a file name of an existing file, the file will be
  238.           overwritten.  Without this flag, munpack appends "/1", "/2",
  239.           etc to find a nonexistent file.
  240.  
  241.      -t
  242.       Also unpack the text parts of multipart messages to files.
  243.       By default, text parts that do not have a filename parameter
  244.       do not get unpacked.
  245.  
  246.      -q
  247.           Be quiet--suppress messages about saving partial messages.
  248.  
  249.      -C directory
  250.           Change the current directory to "directory" before reading
  251.           any files.  This is useful when invoking munpack
  252.           from a mail or news reader.
  253.  
  254. The environment variables which control munpack's behavior are:
  255.  
  256.      Wimp$ScrapDir
  257.           Root of directory to store partial messages awaiting
  258.           reassembly.  Default is "/tmp" which UnixLib should do
  259.           something sensible with.  Partial messages are
  260.           stored in subdirectories of <Wimp$ScrapDir>.parts
  261.  
  262.  
  263. Acknowledgements:
  264.  
  265. Written by John G. Myers, jgm+@cmu.edu
  266.  
  267. The mac version was written by Christopher J. Newman, chrisn+@cmu.edu
  268.  
  269. The amiga port was done by Mike W. Meyer, mwm@contessa.phone.net and
  270. Peter Simons, simons@peti.GUN.de
  271.  
  272. The os2 port was done by Jochen Friedrich, jochen@audio.pfalz.de
  273.  
  274. The archimedes port was done by Olly Betts, olly@mantis.co.uk
  275.  
  276. Send all bug reports to mpack-bugs@andrew.cmu.edu 
  277.  
  278. Thanks to Nathaniel Borenstein for testing early versions of mpack and
  279. for making many helpful suggestions.
  280.  
  281.  
  282. PGP signature:
  283.  
  284. Starting with version 1.5, all official mpack distributions are PGP
  285. signed by "John Gardiner Myers <jgm+@cmu.edu>".  The PGP signatures
  286. are detached from the distributions themselves, in files with the
  287. ".asc" filename extension.  If the location where you obtained mpack
  288. does not include the PGP signature, or if the signature is not valid
  289. for the distribution, please complain to the maintainer of the
  290. relevant distribution site.
  291.  
  292. A valid PGP signature indicates that the distribution is the one that
  293. I put together; it specifically does not indicate any warranty of any
  294. kind on the software.  The Unix and DOS versions were done by myself,
  295. the DOS binaries were checked for viruses using an up-to-date virus
  296. checker.  The Macintosh version was done by a colleague I have reason
  297. to trust.  All other versions were done and compiled by people I have
  298. had no personal contact with.
  299.  
  300. My PGP public key follows:
  301.  
  302. -----BEGIN PGP PUBLIC KEY BLOCK-----
  303. Version: 2.6.1
  304.  
  305. mQBtAi5Sd2AAAAEDANBa5/iCcCUkCsDtSpWIKfwEhqAFOoIE61j7Q/Q+mdU4V/BK
  306. ttboCOk9ZDtGKYhMFvH31I7bAECruV1GIa/awbfI0EMfZwQ+U0YhOUScXfm2ARIv
  307. XotV0HJqmwnIWCbPjQAFEbQiSm9obiBHYXJkaW5lciBNeWVycyA8amdtK0BjbXUu
  308. ZWR1PokAlQMFEC77TI7FLUdtDb+QbQEBhMcD/1gmEtykw84iYmo9TjlCg8hfzqJs
  309. /TvRlUKoNF3oGG7M9h4zmP1AwL75B2/k3UnD39LsTc15J4ZWbH/VwVWPT73rRBwD
  310. hGS33ep1JAP1koB3f1RIjZ3jrRSbdVt45W2l1A+aAPP8oHs7Uf+eSINx7DA6THuu
  311. W14BeJyVu9acBKuriQCVAgUQLvs8nVsjC0SkKFUJAQHbFwP9Gzb+p3z73o6p4A9k
  312. 5xqwr8WpmTBMFITM6p9gLe//RlR3Mh2u6/rYZEPJ73wpokHi3ArEICCG2+58IZpt
  313. WTV0FUPoXZz1bZ+N45yGCPEw2Ibgr6AWHvQzUeIDICWS4D/IPN73QUfifRHQmEeb
  314. 3N7YIr63XoACun8oZZrM6OhVfIGJAJUDBRAu5r4dhxvAWY8bGaUBAdipA/4zxuYA
  315. A/C34f4M+3Ta/F3yY8ooxboLyYiqej0i5uK4w51XjJeRoS6c49hi8m5yw8SQ1VmQ
  316. Suk3pTHSYuE9hermX6ET7tMp5sGB1oIy/1zyoxZfLCbWj2UPHUsVJsMagAn3HbF0
  317. UHZMkCj4WothYNSrMfCnswoWjDKQxVIDVKLkpokAlAMFEC7woYNnNYxubw4jcQEB
  318. qQMD9RDnxCyCHatULx+/KUrJLIYaayZe1D/C2VC0QzzdmxHkcAcc5tjuD1S7igJW
  319. +9hftwlf4EJx1NCSjhteNk57W7bcrLEdi4PInwFNXAuiCUzhLvoBRXQbHEuhM39f
  320. hjATkSTIBX9OrwwSJS2IvuuEaZGy1PJSuCqHg88paZlPRYaJAFUDBRAu59rLqn0S
  321. 2IICPJ0BAYo8AgDCDXoqwVsLKofrHFvVc2/S2MHLtNFhWLmep5D26Uk1uKy6E6vw
  322. pFxjbmr41rPepxYdR32218yIYqEG5RQRcjdOiQCVAwUQLuf5rjJyiM5s7VOJAQHv
  323. UwQArtoqCX1Y9u21KuPP439P5Xcg2MexhAmnYD7JP0d5rHcvp0LYfUsOFAZKpRwl
  324. eLqvzkVnUjVR3X3ehmTQdRNRV6o9LVMXYQmMpoZUQlmR/+ilsNjflhKPwx3PpvYT
  325. AGDMv8QlALKc3gN8wJCxq9iW8DHbTWmoYFDiK74FwbDRjDWJAJUDBRAu5rwCRBVw
  326. zUZrQokBAR5pBADAm/0bxhJMfNGT1/d7eaaGWzo0DZ21UulyPzGGQKhvqT2OqFxJ
  327. ulUL+EYyxeKC7GxkcX7cICcQBNTRt9Ul0ooCT/szGneYeUnotp4dWRRxk8e09kjf
  328. +mLo5imR9OI1cUpjo8AJCpFvp/p6GRlS0WhCzdyD4dYsK3pDL3WCsOfD5YkAlQMF
  329. EC7oAXVJt7YjNP0hXQEBMoQD/R2IYpH9EluRureUWg6Oi3uZlMM6gCTz/cWhjNKC
  330. nwbP5VG/J0TqPIGq7VI6ORM9PwfN5CElYNAHhyetSPdH51+jdPY7g80bMvV1QH5U
  331. DtDOD7zjKo4ZcyRu6d7pz14o5yoRiU2bwFa2obcqFBA077j3sVYHU5Rie6ZZWnSU
  332. /ovHiQCVAwUQLuf9K5DwvktRSrLVAQE4IwP/d/j2hNOdHTdH/fs4DuKF2ATDmeIP
  333. vZzxVD2PpyRVfUTd5cypOnPdw0kBhMMTSHo33A+WR5zy+ZosDpg9a/qJwGmnSB7z
  334. puwGMnBGXQZs8CtcqvqMGlyeMLihJa6pLc6KA29mI8XvgtUiBQa5jm7Ga6Aor4K8
  335. zetpHCP8sbgb7D+JAJUDBRAu5rxv+8I/jbEzFDkBAbDoBACa3YIC2hSK00lQhSo7
  336. GvgldN6YjDs0zAnYoiT55z1vi06etQSx0c0jad6+CX4ctK4g3fUZuw6SIbGkk8tU
  337. Rq1Vl3pHertzbY6VIOt+zTXwlMaH+Jv/wP/FJBI3VkGpRvjWNTtAxaXBAV5va5wd
  338. mcj9JtfpVR77CnHNSSMnRqZsFIkAlQMFEC7m1plfgDcY2g7cgQEBxFkEAJehxpIS
  339. EXxr7AyrkyMH7FylxSf2kiVTRko5hmPm30i7q3d4Bxx6qSItERTykvPy4EhWfUG5
  340. 4OMyD68cIX4ovK4cJ4YK+ZiF8OyDjEVX5E1oXdoc7DQb9eIlEnB7B7orDNYVKxJh
  341. In+IVYmvb4MalsPb7kCik7yplZ6Eu507AD3GiQCVAwUQLua8MH0RF3HCK4zZAQE1
  342. 2AP/TlPe1fVdsgR8z87Mtjp5AyxskKLCH1D/CA8kz19kjmO/aQzP0GxZInX6YvUv
  343. 5Ct7Fk3hjdY6PsnK4Vuykeny00nheQRdL/rkjIXZ4fRpPGPDXJwIhdL4tG8Yh+U2
  344. +PWwg3wy96C2AePDgMz7zpRMF6N5Kc/JJ1zV5DaZu7Wk3jmJAJUDBRAu5sNxq/8H
  345. tEbzIS0BAQxlA/4nbmzbeSKFRwGHe62FydmBE3icDvNYNKGO7+oQQRxayF8ZnYjj
  346. bz6UiL9HZmDa0flSURaXuZTCzo+N2TDr5PbCLb2Nvs8bBFps+rcBfsXtv66LZn4k
  347. ukan9MwUS02PK7L/cV3jURzpjead/vqkh7jYVlwB/Wg1c0aVkHt0F7XiRYkAlQMF
  348. EC7mv4WE37rmLVJ+MQEB0JsD/0ow7V3u78AOEj+FJAH182V03EFk+4YYpyHF1DHA
  349. cCWJoCQ9DrcQ+mnMd73hs4AsF5NRXQXpbI7ocZADOG7kqcTAyedX6xHUisYl08Pv
  350. vPlTRCQkgSRNAF1U2MWq8C7mI/LuyLvsSoFedQlaqi5J0Xm5x2IJzm1p3ukre3Sq
  351. 4CQCiQCVAgUQLlKInRNhgovrPB7dAQGF2wP/ZhaTYW2M8zTPAmCIgeZqHJeMWic+
  352. bGeiCB9ICvcQV0dsBXm/26YXwCXnOVoryY5ToCpj5d2zmvAPBTBOx8GrnAPCOHoH
  353. tumQn5ODeRXhyc+jcSKbk/1jAEteEyJJ+KBTVnJ5LymI3Ayv1aWUmdvJhLGavxl9
  354. Wi3bjI/bpV0eE+g=
  355. =pCCQ
  356. -----END PGP PUBLIC KEY BLOCK-----
  357.  
  358. Legalese:
  359.  
  360. (C) Copyright 1993,1994 by Carnegie Mellon University
  361. All Rights Reserved.
  362.  
  363. Permission to use, copy, modify, distribute, and sell this software
  364. and its documentation for any purpose is hereby granted without fee,
  365. provided that the above copyright notice appear in all copies and that
  366. both that copyright notice and this permission notice appear in
  367. supporting documentation, and that the name of Carnegie Mellon
  368. University not be used in advertising or publicity pertaining to
  369. distribution of the software without specific, written prior
  370. permission.  Carnegie Mellon University makes no representations about
  371. the suitability of this software for any purpose.  It is provided "as
  372. is" without express or implied warranty.
  373.  
  374. CARNEGIE MELLON UNIVERSITY DISCLAIMS ALL WARRANTIES WITH REGARD TO
  375. THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
  376. AND FITNESS, IN NO EVENT SHALL CARNEGIE MELLON UNIVERSITY BE LIABLE
  377. FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
  378. WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
  379. AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
  380. OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
  381. SOFTWARE.
  382.  
  383. Portions of this software are derived from code written by Bell
  384. Communications Research, Inc. (Bellcore) and by RSA Data Security,
  385. Inc. and bear similar copyrights and disclaimers of warranty.
  386.  
  387.